﻿/********************************************************************************
** @ Date:2025/06/04
** @ Author: Gaojia
** @ Description:
** @ Version:1.0.0
** @ Fun:
********************************************************************************/
#ifndef UVideoPanel_H
#define UVideoPanel_H


#include <QWidget>
#include "ui_UVideoPanel.h"
#include "UBasePanel.h"
class UVideoPanel : public UBasePanel
{
	Q_OBJECT

public:
	UVideoPanel(QWidget *parent = nullptr);
	~UVideoPanel();
private:
	void setStyleSheetFile();	//设置界面样式表
	void initConnect();			//初始化槽函数连接

public slots:
	void slotStartPlay();						 //开始播放视频
	void slotEndPlay();							 //结束播放视频
	void slotPushButtonVideoPlayClicked();       //图像开启预览和停止预览
	void slotPushButtonVideoRecordClicked();     //图像开始录像
	void slotPushButtonVideoSnapClicked();       //图像拍照
	void slotPushButtonVideoEnlargeClicked();    //图像放大

	void slotPushButtonInfraredPlayClicked();    //红外开启预览和停止预览
	void slotPushButtonInfraredRecordClicked();  //红外开始录像
	void slotPushButtonInfraredSnapClicked();    //红外拍照
	void slotPushButtonInfraredEnlargeClicked(); //红外放大
	void slot_ExecResult(SCtrReData cCtrReData);
private:
	Ui::UVideoPanelClass ui;
	bool m_bTxStart;//图像相机是否在播放
	bool m_bHwStart;//红外相机是否在播放
	bool m_bTxIsRecord;//图像相机是否在录像
	bool m_bHwRecord;//红外相机是否在录像
	QMap<QString, QString>m_mapCtrId;
public slots:
	void refreshData(bool bRefresh) override;     // 这个函数会被外部调用 给主框架调用的
};
#endif